export interface Chat {
    dateTime?: string
    text?: string
    reasoning?: string
    reasoningTime?: string
    inversion?: boolean
    error?: boolean
    loading?: boolean
}

export interface History {
    title?: string
    isEdit: boolean
    uuid: number
    visible: boolean
}

export interface ChatState {
    active: number | null
    usingContext: boolean;
    history: History[]
    chat: { uuid: number; data: Chat[] }[]
}

export interface ConversationRequest {
    conversationId?: string
    parentMessageId?: string
}
export interface ConversationMessage {
    role: string
    content: string
}
export interface ConversationResponse {
    model: string
    messages: ConversationMessage[]
    stream: boolean
    stream_options: {
        include_usage: boolean
    }
}